Numerous techniques and protocols exist for configuring networks to handle multicast traffic. For Internet Protocol (IP) and/or multiprotocol label switching (MPLS) implementations the existing solutions for multicast are based on multicast label distribution protocol (mLDP) or protocol independent multicast (PIM). These are all techniques that depend on a unicast shortest path first (SPF) computation followed by handshaking between peers to sort out a loop free multicast distribution tree (MDT) for each multicast source. In these approaches, a comprehensive view of multicast connectivity does not exist at the node level, all decisions are entirely local and driven by the combination of the unicast forwarding solution derived from routing information and interactions with immediate peers.
Shortest path bridging (SPB) is a protocol related to computer networking for the configuration of computer networks that enables multipath routing. In one embodiment, the protocol is specified by the Institute of Electrical and Electronics Engineers (IEEE) 802.1aq standard. This protocol replaces prior standards such as spanning tree protocols. SPB enables all paths in the computing network to be active with multiple equal costs paths being utilized through load sharing and similar technologies. The standard enables the implementation of logical Ethernet networks in Ethernet infrastructures using a link state protocol to advertise the topology and logical network memberships of the nodes in the network. SPB implements large scale multicast as part of implementing virtualized broadcast domains. A key distinguishing feature of the SPB standard is that the MDTs are computed from the information in the routing system's link state database via an all-pairs-shortest-path algorithm, which minimizes the amount of control messaging to converge multicast; the only real time peer interaction being advertisement of topology changes to the IGP database.
SPRING is an exemplary profile of the use of MPLS technology whereby global identifiers are used in the form of a global label assigned per label switched route (LSR) used for forwarding to that LSR. A full mesh of unicast tunnels is constructed via every node in the network computing the shortest path to every other node and installing the associated global labels accordingly. In the case of SPRING, this also allows explicit paths to be set up via the application of label stacks at the network ingress. Encompassed with this approach is the concept of a strict (every hop specified) or loose (some waypoints specified) route dependent on how exhaustively the ingress applied label stack specifies the path.
Proposals have been made to use global identifiers in the dataplane combined with the IEEE 802.1aq technique of advertising multicast registrations in the interior gateway protocol (IGP) and replicating the “all pairs shortest path” approach of IEEE 802.1aq to compute MDTs without the additional handshaking associated with legacy approaches to multicast. Such an approach would inherit a lot of desirable properties embodied in the IEEE 802.1aq approach, primarily in the simplification of the amount of control plane exchange required to converge the network. Further proposals have been made to combine the IEEE 802.1aq approach with SPRING tunneling such that multicast distribution tree construction is a hybrid of sparsely deployed multicast state and unicast tunnels significantly reducing the overall amount of multicast state in the network.
Given the above context, a node in the SPRING network could compute its role in implementing any given multicast (S, G) tree purely from information in the IGP. An algorithm that starts with all pairs shortest path computation augmented with algorithms to identify the nodes with specific roles of source, leaf and/or replication point may be employed by each node. Existing unicast tunnels may be used between sources, replication points and leaves of an MDT such that the overall amount of state in the network is minimized. However, SPRING networks do not have support for implementing multipoint to multipoint multicast distribution trees, which offer the benefit of increased scalability due to state and computation minimization by utilizing a single tree to serve all sources in a multicast group. Thus, where such functionality is desired, alternative multicast implementations would need to be utilized such as PIM bi-directional (BI_DIR) or mLDP. These technologies utilize a rendezvous point that senders send traffic to be distributed and where the MDT is rooted at the rendezvous point. However, these technologies would not offer the benefits of computed trees in the form of a further state reduction, increased resiliency, and increased bandwidth efficiency. Therefore, there is considerable benefit to offering a computed/hybrid tree construction bi-directional tree construction option for SPRING.